const env = require('../utils/env');
const extConfig = env.notProd ? require('./dev') : require('./prod');


/**
 * 服务启动端口
 * @type {number}
 */
const SERVER_PORT = 3000;

/**
 * 全局返回设置
 * @type {{}}
 */
const RESPONSE_OPTIONS = {
    type: "json", // 返回类型
    successCode: 200, // 成功后默认状态码
    successMsg: "request.ok", // 成功请求后的默认消息
    failMsg: "request.fail", // 请求失败后的默认消息
    failCode: 500 // 请求失败后的默认状态码
}

/**
 * 跨域请求配置  这里我只配置所有域名可跨域访问，别的配置可以参考koa-cros官网
 * @type {{origin: string}}
 */
const CROS_OPTIONS = {
    origin: "*" // 允许跨域的地址， 默认为所有（*）
}


/**
 * i18n国际化配置
 * @type {{}}
 */
const I18N_OPTIONS = {
    i18nDir: "./i18n", //相对app.js的位置
    locales: ["zh-CN", "en-US"], // 地区设置， i18n文件必须跟这里匹配
    modes: [                    // 语言切换的设置
        'query',                //  optional detect querystring - `/?locale=en-US`
        'cookie',               //  optional detect cookie      - `Cookie: locale=zh-TW`
        'header',               //  optional detect header      - `Accept-Language: zh-CN,zh;q=0.5`
        function() {}           //  optional custom function (will be bound to the koa context)
    ]
}

module.exports = {
    SERVER_PORT,
    RESPONSE_OPTIONS,
    CROS_OPTIONS,
    I18N_OPTIONS,
    extConfig
}
